Skip to content

Ci/gobo#259

Merged
EttyKitty merged 5 commits intodevelopmentfrom
ci/gobo
Jan 31, 2026
Merged

Ci/gobo#259
EttyKitty merged 5 commits intodevelopmentfrom
ci/gobo

Conversation

@EttyKitty
Copy link
Owner

@EttyKitty EttyKitty commented Jan 31, 2026

Purpose and Description

  • Self-descriptive.

Testing done

  • None, and I understand the risks.

Related things and/or additional context

Summary by CodeRabbit

  • Style

    • Standardized whitespace and formatting for controller logic to improve consistency and readability.
  • Chores

    • Formatter workflow updated to run per-file checks during CI, providing clearer per-file output.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Jan 31, 2026

Warning

Rate limit exceeded

@EttyKitty has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 2 minutes and 24 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

Walkthrough

Three files modified with minimal changes: GitHub Actions workflow refactored to process files individually in a loop instead of batch processing, and two GameMaker script files updated with whitespace formatting (removing spaces around assignment and equality operators) nyan.

Changes

Cohort / File(s) Summary
GitHub Actions Workflow
.github/workflows/gobo_check.yml
Refactored formatter step to iterate over each changed file individually using a loop rather than passing all files at once to the Gobo formatter; added per-file echo statements and adjusted invocation pattern nyan.
GameMaker Script Formatting
objects/obj_controller/Create_0.gml, objects/obj_controller/KeyPress_32.gml
Whitespace normalization removing spaces around operators (tutorial = 0;tutorial=0; and obj_ncombat.start == 7obj_ncombat.start==7); no logic changes nyan.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes nyan

Poem

Small edits purr and softly gleam nyan
Looping files like a tidy dream nyan
Spaces trimmed with gentle care nyan
Formatter mews through each file there nyan
Tiny changes making everything beam nyan

🚥 Pre-merge checks | ✅ 1 | ❌ 2
❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Description check ⚠️ Warning The description only contains template placeholders with no actual content; 'Self-descriptive' doesn't explain the purpose, and testing/context sections are empty. Fill in the template with specific details about why the gobo workflow was changed, what changes were made, and testing performed instead of using placeholder text.
Title check ❓ Inconclusive The title 'Ci/gobo' is vague and doesn't clearly convey what the PR accomplishes; it appears to be a branch name rather than a descriptive title. Use a descriptive title following conventional commits format, like 'ci: Update gobo workflow to process files individually' to clarify the actual changes.
✅ Passed checks (1 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch ci/gobo

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In @.github/workflows/gobo_check.yml:
- Around line 34-37: The loop over `${{
steps.changed-files.outputs.all_changed_files }}` is vulnerable to shell
word-splitting for filenames with spaces; set the changed-files action to emit
newline-separated output (use the `separator: '\n'` input) and iterate safely,
e.g. read each filename with `while IFS= read -r file; do ./gobo "$file"; done
<<< "${{ steps.changed-files.outputs.all_changed_files }}" so you correctly
handle spaces and special characters; ensure you still call `./gobo "$file"`
(quoted) when processing each entry.

Comment on lines +34 to +37
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
echo "Formatting $file..."
./gobo "$file"
done
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🌐 Web query:

tj-actions/changed-files@v44 separator option documentation

💡 Result:

In tj-actions/changed-files@v44, the separator input controls the delimiter used when the action returns “list” outputs as a single string (e.g., all_changed_files). It’s documented as:

  • Input: separator
  • Description: “Split character for output strings.”
  • Default: " " (a single space)  [1]

Example:

- id: changed-files
  uses: tj-actions/changed-files@v44
  with:
    separator: ","

You can see the same input documented on the action’s GitHub Marketplace page under “Inputs”. [2]

Sources: [1] (gitea.angry.im) [2] (github.com)

Citations:


Shell word-splitting could break on filenames with spaces, nyan!

The unquoted ${{ steps.changed-files.outputs.all_changed_files }} will cause issues if any .gml file has spaces or special characters in its name, since the action outputs space-separated filenames by default and shell word-splitting will break the loop iteration, nyan~

Use the separator input to switch to newline-separated output, then process with a safe loop pattern, nyan!

🐱 Proposed fix using newline separator, nyan~
       - name: Get Changed Files
         id: changed-files
         uses: tj-actions/changed-files@v44
         with:
           files: '**.gml'
+          separator: "\n"

       - name: Setup Gobo
         if: steps.changed-files.outputs.any_changed == 'true'
         run: |
           curl -LO https://github.com/EttyKitty/Gobo/releases/download/v1.0.0/gobo-ubuntu.zip
           unzip gobo-ubuntu.zip
           chmod +x ./gobo

       - name: Run Formatter
         if: steps.changed-files.outputs.any_changed == 'true'
         run: |
-          for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
-            echo "Formatting $file..."
-            ./gobo "$file"
-          done
+          while IFS= read -r file; do
+            if [[ -n "$file" ]]; then
+              echo "Formatting $file..."
+              ./gobo "$file"
+            fi
+          done <<< "${{ steps.changed-files.outputs.all_changed_files }}"
🤖 Prompt for AI Agents
In @.github/workflows/gobo_check.yml around lines 34 - 37, The loop over `${{
steps.changed-files.outputs.all_changed_files }}` is vulnerable to shell
word-splitting for filenames with spaces; set the changed-files action to emit
newline-separated output (use the `separator: '\n'` input) and iterate safely,
e.g. read each filename with `while IFS= read -r file; do ./gobo "$file"; done
<<< "${{ steps.changed-files.outputs.all_changed_files }}" so you correctly
handle spaces and special characters; ensure you still call `./gobo "$file"`
(quoted) when processing each entry.

@EttyKitty EttyKitty merged commit a58754a into development Jan 31, 2026
2 of 3 checks passed
@coderabbitai coderabbitai bot mentioned this pull request Jan 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant